/*
 * Copyright 2020 eBlocker Open Source UG (haftungsbeschraenkt)
 *
 * Licensed under the EUPL, Version 1.2 or - as soon they will be
 * approved by the European Commission - subsequent versions of the EUPL
 * (the "License"); You may not use this work except in compliance with
 * the License. You may obtain a copy of the License at:
 *
 *   https://joinup.ec.europa.eu/page/eupl-text-11-12
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 * implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package org.eblocker.server.common.malware;

public class MalwareUtils {

    private MalwareUtils() {
    }

    public static String normalize(String url) {
        return stripScheme(stripTrailingSlash(url));
    }

    public static String stripPort(String url) {
        int i = url.indexOf(':');
        return i == -1 ? url : url.substring(0, i);
    }

    private static String stripScheme(String url) {
        if (url.startsWith("https://")) {
            return url.substring(8);
        } else if (url.startsWith("http://")) {
            return url.substring(7);
        }
        return url;
    }

    private static String stripTrailingSlash(String url) {
        return url.endsWith("/") ? url.substring(0, url.length() - 1) : url;
    }
}
